package com.ruoyi.heytalk.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.heytalk.ImFriend;
import com.ruoyi.common.core.domain.heytalk.dto.FriendSetBlackDTO;
import com.ruoyi.common.core.domain.heytalk.dto.FriendSetMomentAuthDTO;
import com.ruoyi.common.core.domain.heytalk.dto.FriendSetStarDTO;
import com.ruoyi.common.core.domain.heytalk.vo.MailFriendListVO;
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;

import java.util.List;

/**
 * 朋友信息Service接口
 * 
 * @author ruoyi
 * @since 2021-10-17
 */
public interface IImFriendService extends IServicePlus<ImFriend, ImFriend> {

    /**
     * 我的通讯录
     * @return 我的通讯录列表
     */
    AjaxResult<List<MailFriendListVO>> friendList();

    /**
     * 移入/移除黑名单
     * @param friendSetBlackDTO 入参
     * @return 结果
     */
    AjaxResult<Void> friendSetBlack(FriendSetBlackDTO friendSetBlackDTO);

    /**
     * 设置/取消星标好友
     * @param friendSetStarDTO 入参
     * @return 结果
     */
    AjaxResult<Void> friendSetStar(FriendSetStarDTO friendSetStarDTO);

    /**
     * 设置朋友圈权限
     * @param friendSetMomentAuthDTO 入参
     * @return 结果
     */
    AjaxResult<Void> friendSetMomentAuth(FriendSetMomentAuthDTO friendSetMomentAuthDTO);

}
